home *** CD-ROM | disk | FTP | other *** search
/ Satanic Rites 4 / Satanic Rites - Issue 4 (1993-05-29)(Destiny).adf / Coder.1200 / Coder.1200
Text File  |  1990-01-05  |  11KB  |  302 lines

  1. }0a0000of780m5370nfff1nfee2nfdd3nfcc4nfbb5nfaa6nf997nf880m5370lf780kfff
  2. ~iff.cbm
  3.  
  4. {2{m               INFORMATION FOR CODERS{1
  5. }0nf771nf662nf553nf444nf335nf226nf117nf00
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.    {lSatanic Rites {jbrings you a `mini Hardware reference manual' for the Amiga
  16. 1200.  
  17.  
  18.    Please note that Commodore have said that they will NOT release a Hardware
  19. Reference Manual for their new machine, so your {lonly {jsource of information is
  20. here in {kSatanic Rites{j.
  21.  
  22.    A quick credit to {lMagic 12 {jhere because `{mTop Secret{j' printed this article
  23. first.  It's merely here in Satanic Rites to aid coders who missed it there,
  24. Ok?
  25. {f***************************************************************************{a
  26.  
  27. {eUSING THE SUPERHIRES MODE{a
  28.  
  29. To  use  the  SuperHires  mode  (1280  pixels  wide), just use the bit 6 of
  30. register $0100
  31.  
  32. bit 6 {e|{a Mode SuperHires
  33. {e-----------------------{a
  34.   0   {e| Non selectionne{e
  35. {e-----------------------{a
  36.   {a1   {e| {aSelectionne{e
  37. {e-----------------------{a
  38.  
  39. {f***************************************************************************{a
  40.  
  41. {eUSING 8 BITPLANES{a
  42.  
  43. The  number  of bitplanes available used to be no more than 7 and was coded
  44. using  the  bits  14 to 12 of register $0100.  To use 8 bitplanes, just use
  45. bit  4  of  register  $0100.   The  value of bits 14 to 12 will then not be
  46. considered anymore.
  47.  
  48. bit 4 {e|{a 8 bitplanes mode 
  49. {e------------------------{a
  50.   0   {e| {aNot selected
  51. {e------------------------{a
  52.   1   {e| {aSelected
  53. {e------------------------{a
  54.  
  55. {f***************************************************************************{a
  56.  
  57. {eACCEDING 24 BITS COLOURS{a
  58.  
  59. {fThe 24 bits colour is coded using 2 words:{a
  60.  
  61. {c-{a the first receives the 4 low bits of each R, G and B componants
  62. {c-{a the second receives the 4 high bits of each R, G and B componants
  63.  
  64. To modify a colour using 24 bits coding, you must use 2 coppers-moves on the
  65. same  colour  register.   The  first move must ABSOLUTELY be the move of the
  66. word  of  the 3*4 high bits, the second move is the move of the word of the
  67. 3*4 low bits.
  68.  
  69. The  copper  knowns  when the move regards the 3*4 low bits or the 3*4 high
  70. bits by checking the bit 9 of register $0106
  71.  
  72. bit 9 {e|{a Componants access
  73. {e-----------------------------------------------------------------{a
  74.   0   {e|{a Access to the 4 low bits of componants R, G and B
  75. {e-----------------------------------------------------------------{a
  76.   1   {e|{a Access to the 4 high bits of componants R, G and B
  77. {e-----------------------------------------------------------------{a
  78.  
  79. ex: change $0180 to $00123456 in the copperlist
  80.  
  81. $01060000
  82. $01800135
  83. $01060200
  84. $01800246
  85.  
  86. When  you  want  to  work using the 12 bits colour coding mode, the 3*4 bits
  87. value you move to the colour register is considered by the copper as the 3*4
  88. high bits.  You don't have to care about $0106.  It seems bit 9 of register
  89. $0106 is initialized to 0 at each copjmp.
  90.  
  91. {f***************************************************************************{a
  92.  
  93. {eACCEDING THE 256 COLOUR PALETTE{a
  94.  
  95. The  amiga  don't  work  with  256  separate colour registers.  A same colour
  96. register is used several times to code several colours.
  97.  
  98. The  amiga  just  works with 8 differents palettes of 32 colours each, using
  99. colour registers from $0180 to $01BE.
  100.  
  101. You  can  choose  the  palette  you want to access via the bits 11 to 14 of
  102. register $0106
  103.  
  104.  
  105. bit 14 {e|{a bit 13 {e|{a bit 12 {e|{a Selected palette
  106. {e--------------------------------------------------------{a
  107.    0   {e|{a    0   {e|{a    0   {e|{a Palette 0 (colour 0 to 31)
  108. {e--------------------------------------------------------{a
  109.    0   {e|{a    0   {e|{a    1   {e|{a Palette 1 (colour 32 to 63)
  110. {e--------------------------------------------------------{a
  111.    0   {e|{a    1   {e|{a    0   {e|{a Palette 2 (colour 64 to 95)
  112. {e--------------------------------------------------------{a
  113.    0   {e|{a    1   {e|{a    1   {e|{a Palette 3 (colour 96 to 125)
  114. {e--------------------------------------------------------{a
  115.    1   {e|{a    0   {e|{a    0   {e|{a Palette 4 (colour 128 to 159)
  116. {e--------------------------------------------------------{a
  117.    1   {e|{a    0   {e|{a    1   {e|{a Palette 5 (colour 160 to 191)
  118. {e--------------------------------------------------------{a
  119.    1   {e|{a    1   {e|{a    0   {e|{a Palette 6 (colour 192 to 223)
  120. {e--------------------------------------------------------{a
  121.    1   {e|{a    1   {e|{a    1   {e|{a Palette 7 (colour 224 to 255)
  122. {e--------------------------------------------------------{a
  123.  
  124. ex: You want to change colour 177 to $00123456
  125.  
  126. Colour 177 is colour $01A2 of palette 5
  127.  
  128. $01065000
  129. $01800246
  130. $01065200
  131. $01800135
  132.  
  133. {f***************************************************************************{a
  134.  
  135. {eSWITCHING THE PALETTE{a
  136.  
  137. You can switch colours. The definition of switching colour A and colour B is:
  138.  
  139. - colour registers of colours A and B are NOT modified by the switching
  140. - colour  A  is  displayed  using  the  content  of register of  colour B and
  141.   vice-versa
  142.  
  143. The  switching  of  palette  can't be used on just n colours of the palette.
  144. Once  you  choose  a  switching  value,  ALL  the  palette's colours will be
  145. switched.   The  switching  value  is  the  value separing the colours to be
  146. switched and is coded with bits 15 to 8 of register $010C.
  147.  
  148. ex: You want all the colours separated by  one  colour in the colourlist to be
  149.     switched
  150.  
  151. $0180 <--
  152. $0182 <--|--
  153. $0184 <--   |
  154. $0186 <-----
  155. $0188 <--------
  156. .              |
  157. .
  158. .
  159.  
  160. Value 2 will be stocked in bits 15 to 8.
  161.  
  162. The  switching  works  with the palette as if it was a circular palette.  I
  163. mean  if  if the copper consider colour 255 and must switch by 1 the colours,
  164. colour $0180 will be assiocated to colour 255.
  165.  
  166. {f***************************************************************************{a
  167.  
  168. {eUSING SPRITES IN LOWRES, HIRES AND SUPERHIRES{a
  169.  
  170. To  change  the  reolution  of the sprite, just use bit 7 and 6 of register
  171. $0106
  172.  
  173. bit 7 {e|{a bit 6 {e|{a Resolution
  174. {e--------------------------{a
  175.   0   {e|{a   0   {e|{a Lowres
  176. {e--------------------------{a
  177.   1   {e|{a   0   {e|{a Hires
  178. {e--------------------------{a
  179.   0   {e|{a   1   {e|{a Lowres
  180. {e--------------------------{a
  181.   1   {e|{a   1   {e|{a SuperHires
  182. {e--------------------------{a
  183.  
  184. {f***************************************************************************{a
  185.  
  186. {eUSING 16, 32 AND 64 PIXELS WIDE SPRITES{a
  187.  
  188. Well,  I  still  have bug there with sprites in 32 or 64 pixels.  Sorry but
  189. the followings informations may have to be corrected.
  190.  
  191. Use bit 3 and 2 of register $01FC
  192.  
  193. bit 3 {e|{a bit 2 {e|{a Wide
  194. {e-------------------------{a
  195.   0   {e|{a   0   {e|{a 16 pixels
  196. {e-------------------------{a
  197.   1   {e|{a   0   {e|{a 32 pixels
  198. {e-------------------------{a
  199.   0   {e|{a   1   {e|{a 32 pixels
  200. {e-------------------------{a
  201.   1   {e|{a   1   {e|{a 64 pixels
  202. {e-------------------------{a
  203.  
  204. The  copper  doesn't read the spritelist in the same way regarding the wide
  205. you choose for your sprite
  206.  
  207. 16 pixels wide reading:
  208.  
  209. word C1, word C2
  210. word A1, word B1
  211. .
  212. .
  213. .
  214. word An, word Bn
  215. $0000 0000
  216.  
  217. C1=first control word
  218. C2=second control word
  219.  
  220. Ai and Bi are combined via OR to form the sprite
  221.  
  222. 32 pixels wide reading:
  223.  
  224. long C1, long C2
  225. long A1, long B1
  226. .
  227. .
  228. .
  229. long An, long Bn
  230. $0000 0000 0000 00000
  231.  
  232. C1=first control long
  233.    the  first control word is the high word of C1.  The low word of C1 must
  234.    contain the second control word.
  235. C2=second control long
  236.    the second control word is the high word of C2. Low word of C2 is $0000
  237.  
  238. Ai and Bi are combined via OR to form the sprite
  239.  
  240. 64 pixels wide reading:
  241.  
  242. double C1, double C2
  243. double A1, double B1
  244. .
  245. .
  246. .
  247. double An, double Bn
  248. $0000 0000 0000 00000 0000 0000 0000 00000
  249.  
  250. C1=first control double
  251.    C1=W3:W2:W1:W0 (Wi=words)
  252.    W3 is first control word
  253.    W2 and W1 are second control word
  254. C2=second control double
  255.    C2=W3:W2:W1:W0 (Wi=words)
  256.    W3 is second control word
  257.  
  258. Ai and Bi are combined via OR to form the sprite
  259.  
  260. {f***************************************************************************{a
  261.  
  262. {eCHANGING THE SPRITE PALETTE{a
  263.  
  264. It  is possible to choose the colour palette of the sprite.  This is done by
  265. the bits 7 and 4 of register $010C.
  266.  
  267. bit 7 {e|{a bit 6 {e|{a bit 5 {e|{a bit 4 {e|{a Starting colour of the sprite's palette
  268. {e-------------------------------------------------------------------------{a
  269.   0   {e|{a   0   {e|{a   0   {e|{a   0   {e|{a $0180/palette 0 (coulor 0)
  270. {e-------------------------------------------------------------------------{a
  271.   0   {e|{a   0   {e|{a   0   {e|{a   1   {e|{a $01A0/palette 0 (colour 15)
  272. {e-------------------------------------------------------------------------{a
  273.   0   {e|{a   0   {e|{a   1   {e|{a   0   {e|{a $0180/palette 1 (colour 31)
  274. {e-------------------------------------------------------------------------{a
  275.   0   {e|{a   0   {e|{a   1   {e|{a   1   {e|{a $01A0/palette 1 (colour 47)
  276. {e-------------------------------------------------------------------------{a
  277.   0   {e|{a   1   {e|{a   0   {e|{a   0   {e|{a $0180/palette 2 (colour 63)
  278. {e-------------------------------------------------------------------------{a
  279.   0   {e|{a   1   {e|{a   0   {e|{a   1   {e|{a $01A0/palette 2 (colour 79)
  280. {e-------------------------------------------------------------------------{a
  281.   0   {e|{a   1   {e|{a   1   {e|{a   0   {e|{a $0180/palette 3 (colour 95)
  282. {e-------------------------------------------------------------------------{a
  283.   0   {e|{a   1   {e|{a   1   {e|{a   1   {e|{a $01A0/palette 3 (colour 111)
  284. {e-------------------------------------------------------------------------{a
  285.   1   {e|{a   0   {e|{a   0   {e|{a   0   {e|{a $0180/palette 4 (colour 127)
  286. {e-------------------------------------------------------------------------{a
  287.   1   {e|{a   0   {e|{a   0   {e|{a   1   {e|{a $01A0/palette 4 (colour 143)
  288. {e-------------------------------------------------------------------------{a
  289.   1   {e|{a   0   {e|{a   1   {e|{a   0   {e|{a $0180/palette 5 (colour 159)
  290. {e-------------------------------------------------------------------------{a
  291.   1   {e|{a   0   {e|{a   1   {e|{a   1   {e|{a $01A0/palette 5 (colour 175)
  292. {e-------------------------------------------------------------------------{a
  293.   1   {e|{a   1   {e|{a   0   {e|{a   0   {e|{a $0180/palette 6 (colour 191)
  294. {e-------------------------------------------------------------------------{a
  295.   1   {e|{a   1   {e|{a   0   {e|{a   1   {e|{a $01A0/palette 6 (colour 207)
  296. {e-------------------------------------------------------------------------{a
  297.   1   {e|{a   1   {e|{a   1   {e|{a   0   {e|{a $0180/palette 7 (colour 223)
  298. {e-------------------------------------------------------------------------{a
  299.   1   {e|{a   1   {e|{a   1   {e|{a   1   {e|{a $01A0/palette 7 (colour 239)
  300. {e-------------------------------------------------------------------------{a
  301.  
  302. {f***************************************************************************{a